package com.example.demo.information.service;

import com.example.demo.information.entity.Bjxx;
import com.example.demo.information.entity.School;
import com.example.demo.information.entity.Student;
import com.example.demo.information.entity.info.StudentInfo;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;

public interface StudentService {
    List<Student> findAll();

    List<Student> findNameLike(String name);

    boolean checkStudent(String sfz, String xjfh);

    String saveStuInfo(StudentInfo studentInfo, School school, Bjxx bjxx);

    String saveStuAndCheck(Student student);
    //TODO 暂时方法
    Bjxx findBjxxById(Long bjxxId);

    void deleteById(Long xsId);

    List<Student> findBySfzOrXjfhOrNameLike(String searchVal);

    Student findById(Long xsId);

    void createDownFile(HttpServletResponse response);

    List<Student> getStuFromExpFile(MultipartFile file
            , Map<String,School> schoolMap, Map<Long,Map<String ,Bjxx>> xxbjMap) throws Exception;

    int saveList(List<Student> studentList);

    boolean checkStudent(Student student);

    List<Student> findBySfzOrXjfh(String sfz, String xjfh);

    void save(Student stu);

    Student findBySfz(String username);

    List<Student> findByBjId(String bjId);

    List<Student> getStuByXxxxIdBjxxIdXsIds(Long xxxxId, Long bjxxId, String xsIds);

    List<Student> findByTypeAndSearch(String searchVal, Long id, String type);
}
